package com.zhuo.project.order.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.zhuo.framework.aspectj.lang.annotation.Excel;
import com.zhuo.framework.web.domain.BaseEntity;

import java.util.Date;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 处方单对象 zz_diagnose_head
 * 
 * @author zhuo
 * @date 2020-03-22
 */
public class ZzDiagnoseHead extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 就诊号 */
    @Excel(name = "就诊号")
    private String encounterId;

    /** 处方单号 */
    @Excel(name = "处方单号")
    private String diagnoseId;

    /** 单据类型，1 处方 2 杂项 */
    @Excel(name = "单据类型，1 处方 2 杂项")
    private Integer orderType;

    @Excel(name = "hms处方Id")
    private Long diagnoseCode;


    /** 处方建立时间 */
    // @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "处方建立时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date diagnoseCreatedAt;

    /** 开单诊所 */
    @Excel(name = "开单诊所")
    private String deptCode;

    /** 诊所名称 */
    @Excel(name = "诊所名称")
    private String deptName;

    /** 医生编码 */
    @Excel(name = "医生编码")
    private String doctorCode;

    /** 医生 */
    @Excel(name = "医生")
    private String doctorName;

    /** 病案号 */
    @Excel(name = "病案号")
    private String patientCode;

    /** 顾客姓名 */
    @Excel(name = "顾客姓名")
    private String patientName;

    /** 性别（1男 2女 3 未知） */
    @Excel(name = "性别", readConverterExp = "1=男,2=女,3=未知")
    private Integer gender;

    /** 出生日期 */
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date dob;

    /** 审核人ID */
    @Excel(name = "审核人ID")
    private String auditorId;

    /** 最后审核人 */
    @Excel(name = "最后审核人")
    private String auditorName;

    /** 最后审核时间 */
    // @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date auditorTime;

    /** 状态（0 未审核 1审核通过 2审核未通过  3 从新审核，4 无需审核） */
    @Excel(name = "状态", readConverterExp = "0=未审核,1=审核通过,2=审核未通过,3=从新审核，4,无需审核")
    private Integer auditStatus;

    /** 是否需要审核（0 不需要审核 1 需要审核 ） */
    @Excel(name = "是否需要审核", readConverterExp = "0=不需要审核,1=需要审核")
    private Integer isAudit;

    /** 审核内容 */
    @Excel(name = "审核内容")
    private String auditContent;

    /** 是否配药（0 否  1 是 2 部分配 3 超配） */
    @Excel(name = "是否配药", readConverterExp = "0=,否=,1=,是=,2=,部=分配,3=,超=配")
    private Integer isEquip;

    /** 是否发药（0 否  1 是 2 部分发 3 超发） */
    @Excel(name = "是否发药", readConverterExp = "0=,否=,1=,是=,2=,部=分发,3=,超=发")
    private Integer isSend;

    /** 是否结账（0 否  1 是  ） */
    @Excel(name = "是否结账", readConverterExp = "0=,否=,1=,是=")
    private Integer isBill;

    /** 年龄 */
    @Excel(name = "年龄")
    private String age;

    /** 身高 */
    @Excel(name = "身高")
    private String height;

    /** 体重 */
    @Excel(name = "体重")
    private String weight;

    /** 体温(摄氏度) */
    @Excel(name = "体温(摄氏度)")
    private String temperature;

    /** 血压BP */
    @Excel(name = "血压BP")
    private String bp;

    /** 脉搏(bmp) */
    @Excel(name = "脉搏(bmp)")
    private String bmp;

    /** 呼吸 */
    @Excel(name = "呼吸")
    private String breathe;

    /** 血氧饱和度 */
    @Excel(name = "血氧饱和度")
    private String bloodOxygen;

    /** 末次月经 */
    @Excel(name = "末次月经")
    private String lastMenstruation;

    /** 药物过敏 */
    @Excel(name = "药物过敏")
    private String drugAllergy;

    /** 食物过敏 */
    @Excel(name = "食物过敏")
    private String foodAllergy;

    /** 非药物过敏 */
    @Excel(name = "非药物过敏")
    private String undrugAllergy;

    /** 警示 */
    @Excel(name = "警示")
    private String alertMark;

    /** 现病史 */
    @Excel(name = "现病史")
    private String medicalBg;

    /** 其它 */
    @Excel(name = "其它")
    private String ext;

    /** 医生诊断 */
    @Excel(name = "医生诊断")
    private String diagnoseContent;

    /** 状态（0正常 1关闭） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=关闭")
    private Integer isValid;

    /** 最后更新时间 */
    // @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date synTime;


    /** 主诉 */
    @Excel(name = "主诉")
    private String subjective;

    /** 体格检查 */
    @Excel(name = "体格检查")
    private String assessment;

    /** 建议 */
    @Excel(name = "建议")
    private String plans;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    /** 皮试结果记录 */
    @Excel(name = "皮试结果记录")
    private String skinTest;


    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setEncounterId(String encounterId) 
    {
        this.encounterId = encounterId;
    }

    public String getEncounterId() 
    {
        return encounterId;
    }
    public void setDiagnoseId(String diagnoseId) 
    {
        this.diagnoseId = diagnoseId;
    }

    public String getDiagnoseId() 
    {
        return diagnoseId;
    }
    public void setDiagnoseCreatedAt(Date diagnoseCreatedAt) 
    {
        this.diagnoseCreatedAt = diagnoseCreatedAt;
    }

    public Date getDiagnoseCreatedAt() 
    {
        return diagnoseCreatedAt;
    }
    public void setDeptCode(String deptCode)
    {
        this.deptCode = deptCode;
    }

    public String getDeptCode()
    {
        return deptCode;
    }
    public void setDeptName(String deptName)
    {
        this.deptName = deptName;
    }

    public String getDeptName()
    {
        return deptName;
    }
    public void setDoctorCode(String doctorCode) 
    {
        this.doctorCode = doctorCode;
    }

    public String getDoctorCode() 
    {
        return doctorCode;
    }
    public void setDoctorName(String doctorName) 
    {
        this.doctorName = doctorName;
    }

    public String getDoctorName() 
    {
        return doctorName;
    }
    public void setPatientCode(String patientCode) 
    {
        this.patientCode = patientCode;
    }

    public String getPatientCode() 
    {
        return patientCode;
    }
    public void setPatientName(String patientName) 
    {
        this.patientName = patientName;
    }

    public String getPatientName() 
    {
        return patientName;
    }
    public void setGender(Integer gender) 
    {
        this.gender = gender;
    }

    public Integer getGender() 
    {
        return gender;
    }
    public void setDob(Date dob) 
    {
        this.dob = dob;
    }

    public Date getDob() 
    {
        return dob;
    }
    public void setAuditorId(String auditorId)
    {
        this.auditorId = auditorId;
    }

    public String getAuditorId()
    {
        return auditorId;
    }
    public void setAuditorName(String auditorName) 
    {
        this.auditorName = auditorName;
    }

    public String getAuditorName() 
    {
        return auditorName;
    }
    public void setAuditorTime(Date auditorTime) 
    {
        this.auditorTime = auditorTime;
    }

    public Date getAuditorTime() 
    {
        return auditorTime;
    }
    public void setAuditStatus(Integer auditStatus) 
    {
        this.auditStatus = auditStatus;
    }

    public Integer getAuditStatus() 
    {
        return auditStatus;
    }
    public void setIsAudit(Integer isAudit) 
    {
        this.isAudit = isAudit;
    }

    public Integer getIsAudit() 
    {
        return isAudit;
    }
    public void setAuditContent(String auditContent) 
    {
        this.auditContent = auditContent;
    }

    public String getAuditContent() 
    {
        return auditContent;
    }
    public void setIsEquip(Integer isEquip) 
    {
        this.isEquip = isEquip;
    }

    public Integer getIsEquip() 
    {
        return isEquip;
    }
    public void setIsSend(Integer isSend) 
    {
        this.isSend = isSend;
    }

    public Integer getIsSend() 
    {
        return isSend;
    }
    public void setIsBill(Integer isBill) 
    {
        this.isBill = isBill;
    }

    public Integer getIsBill() 
    {
        return isBill;
    }
    public void setAge(String age) 
    {
        this.age = age;
    }

    public String getAge() 
    {
        return age;
    }
    public void setHeight(String height) 
    {
        this.height = height;
    }

    public String getHeight() 
    {
        return height;
    }
    public void setWeight(String weight) 
    {
        this.weight = weight;
    }

    public String getWeight() 
    {
        return weight;
    }
    public void setTemperature(String temperature) 
    {
        this.temperature = temperature;
    }

    public String getTemperature() 
    {
        return temperature;
    }
    public void setBp(String bp) 
    {
        this.bp = bp;
    }

    public String getBp() 
    {
        return bp;
    }
    public void setBmp(String bmp) 
    {
        this.bmp = bmp;
    }

    public String getBmp() 
    {
        return bmp;
    }
    public void setBreathe(String breathe) 
    {
        this.breathe = breathe;
    }

    public String getBreathe() 
    {
        return breathe;
    }
    public void setBloodOxygen(String bloodOxygen) 
    {
        this.bloodOxygen = bloodOxygen;
    }

    public String getBloodOxygen() 
    {
        return bloodOxygen;
    }
    public void setLastMenstruation(String lastMenstruation) 
    {
        this.lastMenstruation = lastMenstruation;
    }

    public String getLastMenstruation() 
    {
        return lastMenstruation;
    }
    public void setDrugAllergy(String drugAllergy) 
    {
        this.drugAllergy = drugAllergy;
    }

    public String getDrugAllergy() 
    {
        return drugAllergy;
    }
    public void setFoodAllergy(String foodAllergy) 
    {
        this.foodAllergy = foodAllergy;
    }

    public String getFoodAllergy() 
    {
        return foodAllergy;
    }
    public void setUndrugAllergy(String undrugAllergy) 
    {
        this.undrugAllergy = undrugAllergy;
    }

    public String getUndrugAllergy() 
    {
        return undrugAllergy;
    }
    public void setAlertMark(String alertMark) 
    {
        this.alertMark = alertMark;
    }

    public String getAlertMark() 
    {
        return alertMark;
    }
    public void setMedicalBg(String medicalBg) 
    {
        this.medicalBg = medicalBg;
    }

    public String getMedicalBg() 
    {
        return medicalBg;
    }
    public void setExt(String ext) 
    {
        this.ext = ext;
    }

    public String getExt() 
    {
        return ext;
    }
    public void setDiagnoseContent(String diagnoseContent) 
    {
        this.diagnoseContent = diagnoseContent;
    }

    public String getDiagnoseContent() 
    {
        return diagnoseContent;
    }
    public void setIsValid(Integer isValid) 
    {
        this.isValid = isValid;
    }

    public Integer getIsValid() 
    {
        return isValid;
    }
    public void setSynTime(Date synTime) 
    {
        this.synTime = synTime;
    }

    public Date getSynTime() 
    {
        return synTime;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }

    public Long getDiagnoseCode() {
        return diagnoseCode;
    }

    public void setDiagnoseCode(Long diagnoseCode) {
        this.diagnoseCode = diagnoseCode;
    }

    public String getSubjective() {
        return subjective;
    }

    public void setSubjective(String subjective) {
        this.subjective = subjective;
    }

    public String getAssessment() {
        return assessment;
    }

    public void setAssessment(String assessment) {
        this.assessment = assessment;
    }

    public String getPlans() {
        return plans;
    }

    public void setPlans(String plans) {
        this.plans = plans;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public String getSkinTest() {
        return skinTest;
    }

    public void setSkinTest(String skinTest) {
        this.skinTest = skinTest;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("encounterId", getEncounterId())
            .append("diagnoseId", getDiagnoseId())
            .append("diagnoseCreatedAt", getDiagnoseCreatedAt())
            .append("deptCode", getDeptCode())
            .append("deptName", getDeptName())
            .append("doctorCode", getDoctorCode())
            .append("doctorName", getDoctorName())
            .append("patientCode", getPatientCode())
            .append("patientName", getPatientName())
            .append("gender", getGender())
            .append("dob", getDob())
            .append("auditorId", getAuditorId())
            .append("auditorName", getAuditorName())
            .append("auditorTime", getAuditorTime())
            .append("auditStatus", getAuditStatus())
            .append("isAudit", getIsAudit())
            .append("auditContent", getAuditContent())
            .append("isEquip", getIsEquip())
            .append("isSend", getIsSend())
            .append("isBill", getIsBill())
            .append("age", getAge())
            .append("height", getHeight())
            .append("weight", getWeight())
            .append("temperature", getTemperature())
            .append("bp", getBp())
            .append("bmp", getBmp())
            .append("breathe", getBreathe())
            .append("bloodOxygen", getBloodOxygen())
            .append("lastMenstruation", getLastMenstruation())
            .append("drugAllergy", getDrugAllergy())
            .append("foodAllergy", getFoodAllergy())
            .append("undrugAllergy", getUndrugAllergy())
            .append("alertMark", getAlertMark())
            .append("medicalBg", getMedicalBg())
            .append("ext", getExt())
            .append("diagnoseContent", getDiagnoseContent())
            .append("isValid", getIsValid())
            .append("synTime", getSynTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("subjective", getSubjective())
            .append("assessment", getAssessment())
            .append("plans", getPlans())
            .append("remarks", getRemarks())
            .append("skinTest", getSkinTest())
            .toString();
    }
}
